package com.example.mybatisplusdemo.config;

import com.example.mybatisplusdemo.domain.Student;
import org.springframework.context.annotation.*;

/**
 * Configuration表示当前类是作为配置文件使用，就是用来配置容器的。
 *
 * 原来独立的bean文件可以通过@ImportResource注解导入进来
 */

@Configuration
@ImportResource(value={"classpath:beans.xml"}) // 引入独立的bean xml文件

@ComponentScan(basePackages = "com.example.mybatisplusdemo.domain")
public class SpringConfig {

    /**
     *
     * 创建方法，方法返回值是对象，在方法上加注解@Bean
     * 方法返回的对象就注入到容器中了。
     * @Bean相当于beans.xml的<bean>
     * @Bean不指定名称，默认name属性就是方法名
     */

    @Bean
    public Student createStudent(){
        Student s1 = new Student();
        s1.setName("张三");
        s1.setAge(14);
        s1.setSex("男");
        return s1;
    }

    /**
     * 指定对象在容器中的名称  lisiStudent
     * @return
     */
    @Bean(name= "lisiStudent")
    public Student lisiStudent(){
        Student s1 = new Student();
        s1.setName("李四");
        s1.setAge(14);
        s1.setSex("男");
        return s1;
    }
}
